package cn.collection.set;

import java.util.TreeSet;

public class Demo03 {
    /*
    3.3自然排序Comparable的使用【应用】
        案例需求
            存储学生对象并遍历，创建TreeSet集合使用无参构造方法
        要求：按照年龄从小到大排序，年龄相同时，按照姓名的字母顺序排序
        实现步骤
            使用空参构造创建TreeSet集合
            用TreeSet集合存储自定义对象，无参构造方法使用的是自然排序对元素进行排序的
            自定义的Student类实现Comparable接口
            自然排序，就是让元素所属的类实现Comparable接口，重写compareTo(T o)方法
            重写接口中的compareTo方法
            重写方法时，一定要注意排序规则必须按照要求的主要条件和次要条件来写
    * */
    public static void main(String[] args) {
//创建集合对象
        TreeSet<Student> ts = new TreeSet<>();
        //创建学生对象
        Student s1 = new Student("zhangsan",28);
        Student s2 = new Student("lisi",27);
        Student s3 = new Student("wangwu",29);
        Student s111 = new Student("zhaoliuaa",33);
        Student s4 = new Student("zhaoliu",33);
        Student s5 = new Student("qianqi",30);
        //把学生添加到集合
        ts.add(s1);
        ts.add(s2);
        ts.add(s3);
        ts.add(s4);
        ts.add(s5);
        ts.add(s111);
        //遍历集合
        for (Student student : ts) {
            System.out.println(student);
        }
    }
}
